package com.hospital.user.cost.service;

import com.hospital.user.cost.entity.UserCost;

import java.util.List;

public interface UserCostService {
    /**
     * 缴费状态查询总记录数
     *
     * @return 放回int类型
     */
    public int UserTotalPageCount();

    /* *
     * 按照缴费状态查询user信息
     * @param start 起始下标
     * @param lineNumber 显示的行数
     * @return 放回List<UserEntity></>类型
     */
    public List<UserCost> UserSelect(String name, Integer start, Integer lineNumber);

    /**
     * 用户缴费
     *
     * @param id     数据行
     * @param userId 用户id
     * @return true 缴费成功 false 余额不足，缴费失败
     */
    boolean pay(Integer id, Integer userId);

    //    *
//     * 查询用户缴费状态
//     * @return 放回int类型
//
    public int UserStateSelect();


    /**
     * 根据用户id查询用户余额
     *
     * @param userId 用户id
     * @return
     */
    public Double UserMoneySelect(Integer userId);

    /**
     * 根据用户id查询用户缴费信息
     *
     * @param userId 用户id
     * @return
     */
    List<UserCost> userPayment(Integer userId);

    /**
     * 根据用户名查询索要缴费的类型价钱
     *
     * @param userId 用户id
     * @return
     */
    public Double ctPrice(Integer userId);

    /**
     * 缴费成功后的用户缴费信息
     *
     * @return
     */
    public int userPaymentInsert(int userId, String type, double money);

    /* *
     * 根据用户id修改用户缴费状态
     * @param userId 用户id
     * @return
     */
    public int userStateUpdate(Integer userId);

    /**
     * 根据用户id查询要缴费类型的次数
     *
     * @param userId 用户id
     * @return
     */
    public int userPaymentNbm(Integer userId);


}
